package com.glacier.yuyuan.modules.admin.sys.mapper;

import com.glacier.yuyuan.modules.admin.sys.domain.RoleMenu;
import org.apache.ibatis.annotations.Param;

import java.io.Serializable;
import java.util.Collection;
import java.util.List;

/**
 * date 2023-01-07 17:32
 * 角色菜单 mappper
 *
 * @author glacier
 * @version 1.0.0
 */
public interface RoleMenuMapper<ID extends Serializable> {

    /**
     * 查询数据列表
     *
     * @param roleId
     * @return
     */
    List<String> findListByRoleId(@Param("roleId") ID roleId);

    /**
     * 查询数据列表
     *
     * @param menuId
     * @return
     */
    List<String> findListByMenuId(@Param("menuId") ID menuId);

    /**
     * 插入数据
     *
     * @param entitys
     * @return
     */
    int batchInsert(@Param("entitys") Collection<RoleMenu> entitys);

    /**
     * 根据角色id 删除
     *
     * @param idList
     * @return
     */
    int deleteByRoleIds(@Param("idList") List<ID> idList);


    /**
     * 根据菜单id 删除
     *
     * @param idList
     * @return
     */
    int deleteByMenuIds(@Param("idList") List<ID> idList);
}
